/*
 * Copyright 2025 arisgo@163.com
 *
 * Licensed under the Apache License, Version 2.0 (the "License");
 * you may not use this file except in compliance with the License.
 * You may obtain a copy of the License at
 *
 *     http://www.apache.org/licenses/LICENSE-2.0
 *
 * Unless required by applicable law or agreed to in writing, software
 * distributed under the License is distributed on an "AS IS" BASIS,
 * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
 * See the License for the specific language governing permissions and
 * limitations under the License.
 */

package com.arisgo.cloud.auth.sys.entity;

import com.arisgo.cloud.web.model.NumberIdWithTime;
import java.sql.Date;
import java.time.LocalDate;

import com.mybatisflex.annotation.Table;

import lombok.Data;

/**
 * 租户
 *
 * @author Arisgo
 * @since 2024-06-14
 */
@Data
@Table("auth_tenant")
public class Tenant extends NumberIdWithTime {

    /**
    * 名称
    */
    private String name;
    /**
    * 负责人
    */
    private Long userId;
    /**
    * 域名
    */
    private String domain;
    /**
    * 规模
    */
    private Integer scale;
    /**
    * 地址
    */
    private String address;
    /**
    * 注册时间
    */
    private LocalDate startDate;
    /**
    * 到期时间
    */
    private LocalDate endDate;
    /**
    * 状态 0/正常 1/锁定 2/注销
    */
    private Integer status;

    public static final String NAME = "name";
    public static final String REGISTER_USER = "register_user";
    public static final String DOMAIN = "domain";
    public static final String SCALE = "scale";
    public static final String ADDRESS = "address";
    public static final String START_DATE = "start_date";
    public static final String END_DATE = "end_date";
    public static final String STATUS = "status";
}
